package J2_9;


public class test {
    //给你两个 非空 的链表，表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的，并且每个节点只能存储 一位 数字。
    //请你将两个数相加，并以相同形式返回一个表示和的链表。
    //你可以假设除了数字 0 之外，这两个数都不会以 0 开头。
    public class ListNode {
      int val;
      ListNode next;
      ListNode() {}
      ListNode(int val) { this.val = val; }
      ListNode(int val, ListNode next) { this.val = val; this.next = next; }
  }
    public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
        int sum = 0;
        int carry = 0;
        ListNode root = new ListNode(0);
        ListNode cur = root;
        while(l1!=null && l2!=null) {
            sum = (l1.val+l2.val+carry)%10;
            carry = (l1.val+l2.val+carry)/10;
            ListNode n = new ListNode(sum);
            cur.next = n;
            cur = cur.next;
            l1 = l1.next;
            l2 = l2.next;
        }
        if (l1 != null) {
            while(l1 != null) {
                sum = (l1.val + carry)%10;
                carry = (l1.val + carry)/10;
                ListNode n = new ListNode(sum);
                cur.next = n;
                cur = cur.next;
                l1 = l1.next;
            }
            if (carry == 1) {
                ListNode n = new ListNode(carry);
                cur.next = n;
            }
           return root.next;
        } else {
            while(l2 != null) {
                sum = (l2.val + carry)%10;
                carry = (l2.val + carry)/10;
                ListNode n = new ListNode(sum);
                cur.next = n;
                cur = cur.next;
                l2 = l2.next;
            }
            if (carry == 1) {
                ListNode n = new ListNode(carry);
                cur.next = n;
            }
            return root.next;
        }

    }

    //给定一个字符串 s ，请你找出其中不含有重复字符的 最长子串 的长度。
    public int lengthOfLongestSubstring(String s) {
        char ch[] = s.toCharArray();
        char arr[] = new char[s.length()];
        int max;
        for (char c: ch
             ) {

        }
        return 1;
    }

    private boolean toFind(char[] arr,char ch) {
        for (char c:arr) {
            if (c == ch) {
                return true;
            }
        }
        return false;
    }
}
